<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>
<head>
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
<title>Notes for Building Audacious on Windows</title>
</head>
<body>

<h2>Notes for Building Audacious on Windows</h2>

<p><em>John Lindgren<br>
February 09, 2023</em></p>

<p>A Makefile and several patch files should accompany this document.</p>

<h3>Set up MSYS2 environment</h3>

<p>Download and run the latest MSYS2 installer:<br>
<tt>https://repo.msys2.org/distrib/x86_64/msys2-x86_64-&lt;DATE&gt;.exe</tt></p>

<p>Accept the default options to install to <tt>C:\msys64</tt>.</p>

<p>Edit <tt>C:\msys64\home\&lt;USER&gt;\.bashrc</tt> and add the following lines:</p>
<blockquote><p><tt>export PATH="$PATH:/C/libs/bin:/C/aud/bin"<br>
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/C/libs/lib/pkgconfig:/C/aud/lib/pkgconfig"<br>
export C_INCLUDE_PATH=/C/libs/include<br>
export CPLUS_INCLUDE_PATH=/C/libs/include<br>
export LIBRARY_PATH=/C/libs/lib</tt></p></blockquote>

<p>In the MinGW shell (MSYS2 MinGW 64-bit, <b>not</b> MSYS2 MSYS):</p>

<blockquote><p><tt>pacman -Syu<br>
pacman -S autoconf automake git libtool make patch pkg-config<br>
pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-gettext mingw-w64-x86_64-libxml2<br>
pacman -S mingw-w64-x86_64-atk mingw-w64-x86_64-cairo mingw-w64-x86_64-pango<br>
pacman -S mingw-w64-x86_64-gdk-pixbuf2 mingw-w64-x86_64-librsvg mingw-w64-x86_64-qt6-base<br>
pacman -S mingw-w64-x86_64-qt6-imageformats mingw-w64-x86_64-qt6-svg mingw-w64-x86_64-qt6-translations<br>
pacman -S mingw-w64-x86_64-flac mingw-w64-x86_64-libvorbis mingw-w64-x86_64-libcdio-paranoia<br>
pacman -S mingw-w64-x86_64-fluidsynth mingw-w64-x86_64-mpg123 mingw-w64-x86_64-faad2<br>
pacman -S mingw-w64-x86_64-wavpack mingw-w64-x86_64-libmodplug mingw-w64-x86_64-libbs2b<br>
pacman -S mingw-w64-x86_64-libsamplerate mingw-w64-x86_64-libsoxr mingw-w64-x86_64-neon<br>
pacman -S mingw-w64-x86_64-libcue mingw-w64-x86_64-lame mingw-w64-x86_64-opusfile<br>
pacman -S mingw-w64-x86_64-libopenmpt mingw-w64-x86_64-json-glib</tt></p></blockquote>

<h3>Install GTK</h3>

<p>The Makefile accompanying this document automates the process of building GTK from source.</p>

<p>In the MinGW shell:</p>
<blockquote><p><tt>cd &lt;PATH TO THIS DOCUMENT&gt;<br>
make -j$(nproc) gtk</tt></p></blockquote>

<p><i>It may be necessary to run the MinGW shell with administrative privileges
for GTK to build successfully.</i></p>

<h3>Install additional libraries</h3>

<p>In the MinGW shell:</p>
<blockquote><p><tt>cd &lt;PATH TO THIS DOCUMENT&gt;<br>
make -j$(nproc) ffmpeg<br>
make -j$(nproc) libmms<br>
make -j$(nproc) libbinio<br>
make -j$(nproc) adplug<br>
make -j$(nproc) libsidplayfp</tt></p></blockquote>

<h3>Install Audacious</h3>

<p>Download and unzip to <tt>C:\audacious</tt>:<br>
<tt>https://distfiles.audacious-media-player.org/audacious-&lt;VERSION&gt;.tar.bz2</tt></p>

<p>In the MinGW shell:</p>
<blockquote><p><tt>cd /C/audacious<br>
./configure --prefix=/C/aud --enable-gtk2<br>
make -j$(nproc)<br>
make install</tt></p></blockquote>

<h3>Install Audacious Plugins</h3>

<p>Download and unzip to <tt>C:\audacious-plugins</tt>:<br>
<tt>https://distfiles.audacious-media-player.org/audacious-plugins-&lt;VERSION&gt;.tar.bz2</tt></p>

<p>In the MinGW shell:</p>
<blockquote><p><tt>cd /C/audacious-plugins<br>
./configure --prefix=/C/aud --enable-gtk2<br>
make -j$(nproc)<br>
make install</tt></p></blockquote>

</body>
</html>
